﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Collections;
using System.ComponentModel;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;
using System.Xml;
using System.IO;
using System.Text;
using WebServiceSmart.Router;
using System.Collections.Generic;
using Thrift.Transport;
using Thrift.Protocol;
using Thrift.Route;
using log4net;
using System.Transactions;
namespace WebServiceSmart
{
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务，请取消对下行的注释。
    // [System.Web.Script.Services.ScriptService]
    partial class MyService
    {
        //流程应为：序列化->压缩->加密->Base64转换
        //          Base64转换->解密->解压缩->反序列化
        //压缩应在加密之前，可保证压缩比，若放在加密之后，则会失去压缩比。
        //--------------------------------------------------------------------

        #region //新PC接口==================================================
        /* 网点软件短信自动发送接口
         * 
         * SmsType: 1运单建立短信（外部短信）
         *          2运单到港短信（外部短信）
         *          4车次装车短信（内部短信）
         *          5车次发车短信（内部短信）
         *          6车次到港短信（内部短信）
         *          7车次完结短信（内部短信）
         *          8代收回账短信（内部短信）
         * 
         * Phonecount:有效电话数
         * Account:网点账号
         * UserAccount:员工账号
         * Password:员工密码
         * 
         * ret: 2网点剩余短信条数不足
         *      1公司剩余短信条数不足
         *      0成功
         *      -1公司或网点账号不存在
         *      -2员工账号密码不匹配
         *      -3数据库错误
         *      -4参数错误
         *      
         *      
        /************************************************************************/
        [WebMethod(Description = "网点软件短信自动发送接口  return string  MessageName = string msg 包含sqlinfo 带加密")]
        public string Net_AutoSendSMSNew(string msg)
        {
            string ret = null;
            ComThriftMsg comimpl = DBImpl.Net_AutoSendSMSNew(msg);
            try
            {
                byte[] retb = CommonTools.ComThriftTOByte(comimpl);

                ret = Convert.ToBase64String(retb);
            }
            catch
            {

            }

            return ret;
        }

        /* 公司软件短信自动发送接口
         * 
         * SmsType: 3代收到账短信（外部短信）
         *          9代收到账短信（内部短信）
         * 
         * Phonecount:有效电话数
         * Account:网点账号
         * UserAccount:员工账号
         * Password:员工密码
         * 
         * ret: 2网点剩余短信条数不足
         *      1公司剩余短信条数不足
         *      0成功
         *      -1公司或网点账号不存在
         *      -2员工账号密码不匹配
         *      -3数据库错误
         *      -4参数错误
         *      
         *      
        /************************************************************************/
        [WebMethod(Description = "公司软件短信自动发送接口  return string  MessageName = string msg 包含sqlinfo 带加密")]
        public string Company_AutoSendSMSNew(string msg)
        {
            string ret = null;
            ComThriftMsg comimpl = DBImpl.Company_AutoSendSMSNew(msg);
            try
            {
                byte[] retb = CommonTools.ComThriftTOByte(comimpl);

                ret = Convert.ToBase64String(retb);
            }
            catch
            {
            }

            return ret;
        }

        /* 网点软件短信手动发送接口（外部短信）
         * 
         * 
         * Phonecount:有效电话数
         * Account:网点账号
         * UserAccount:员工账号
         * Password:员工密码
         * 
         * ret: 2网点剩余短信条数不足
         *      1公司剩余短信条数不足
         *      0成功
         *      -1公司或网点账号不存在
         *      -2员工账号密码不匹配
         *      -3数据库错误
         *      
         *      
        /************************************************************************/
        [WebMethod(Description = "网点软件短信手动发送接口  return string  MessageName = string msg 包含sqlinfo 带加密")]
        public string Net_ManualSendSMSNew(string msg)
        {
            string ret = null;
            ComThriftMsg comimpl = DBImpl.Net_ManualSendSMSNew(msg);

            try
            {
                byte[] retb = CommonTools.ComThriftTOByte(comimpl);

                ret = Convert.ToBase64String(retb);
            }
            catch
            {
            }
            return ret;
        }

        /* 公司软件短信手动发送接口（内部短信）
         * 
         * Phonecount:有效电话数
         * Account:公司账号
         * UserAccount:员工账号
         * Password:员工密码
         * 
         * ret: 1公司剩余短信条数不足
         *      0成功
         *      -1公司账号不存在
         *      -2员工账号密码不匹配
         *      -3数据库错误
         *      -4获取数量出错
         *      
        /************************************************************************/
        [WebMethod(Description = "公司软件短信手动发送接口  return string  MessageName = string msg 包含sqlinfo 带加密")]
        public string Company_ManualSendSMSNew(string msg)
        {
            string ret = null;
            ComThriftMsg comimpl = DBImpl.Company_ManualSendSMSNew(msg);

            try
            {
                byte[] retb = CommonTools.ComThriftTOByte(comimpl);

                ret = Convert.ToBase64String(retb);
            }
            catch
            {
            }

            return ret;
        }

        #endregion  //新PC接口==================================================


    }
}
